package ve.ucv.patologiaocular.domain;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

@Entity
@Table(name = "USUARIO")
public class Usuario {
	private Integer id;
	private String nombre;
	private String apellido;
	private String correo;
	private String nombreUsuario;
	private String contrasena;
	private String estatus;
	private String aprobado;
	private Rol RolId = new Rol();	

	public Usuario() {
		super();
	}
	
	public Usuario(Integer id, String nombre, String apellido, String correo, String nombreUsuario, String contrasena,
			String estatus, String aprobado, Rol RolId) {
		super();
		this.id = id;
		this.nombre = nombre;
		this.apellido = apellido;
		this.correo = correo;
		this.nombreUsuario = nombreUsuario;
		this.contrasena = contrasena;
		this.estatus = estatus;
		this.aprobado = aprobado;
		this.RolId = RolId;
	}
	
	@Id
	@GeneratedValue
	@Column(name = "ID")
	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@Column(name = "NOMBRE")
	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	@Column(name = "APELLIDO")
	public String getApellido() {
		return apellido;
	}

	public void setApellido(String apellido) {
		this.apellido = apellido;
	}

	@Column(name = "CORREO")
	public String getCorreo() {
		return correo;
	}

	public void setCorreo(String correo) {
		this.correo = correo;
	}
	
	@Column(name = "NOMBREUSUARIO")
	public String getNombreUsuario() {
		return nombreUsuario;
	}

	public void setNombreUsuario(String nombreUsuario) {
		this.nombreUsuario = nombreUsuario;
	}
	
	@Column(name = "CONTRASENA")
	public String getContrasena() {
		return contrasena;
	}

	public void setContrasena(String contrasena) {
		this.contrasena = contrasena;
	}
	
	@Column(name = "ESTATUS")
	public String getEstatus() {
		return estatus;
	}

	public void setEstatus(String estatus) {
		this.estatus = estatus;
	}
	
	@Column(name = "APROBADO")
	public String getAprobado() {
		return aprobado;
	}

	public void setAprobado(String aprobado) {
		this.aprobado = aprobado;
	}
	
	@ManyToOne(optional = false)    
	@JoinColumn(name = "ROL_ID")
	public Rol getRolId() {
		return RolId;
	}
	
	public void setRolId(Rol RolId) {
		this.RolId = RolId;
	}
}
